import request from '@/config/axios'

// 跨境电商平台API配置 VO
export interface PlatformApiConfigVO {
  id: number // API配置编号
  platformId: number // 平台编号
  storeId: number // 店铺编号（为空表示平台级配置）
  apiType: string // API类型
  apiName: string // API名称
  apiEndpoint: string // API端点
  httpMethod: string // HTTP方法
  requestHeaders: string // 请求头配置JSON
  requestParams: string // 请求参数配置JSON
  responseMapping: string // 响应映射配置JSON
  rateLimitPerMinute: number // 每分钟请求限制
  rateLimitPerHour: number // 每小时请求限制
  rateLimitPerDay: number // 每天请求限制
  timeoutSeconds: number // 超时时间（秒）
  retryTimes: number // 重试次数
  retryIntervalSeconds: number // 重试间隔（秒）
  status: number // 状态（0正常 1停用）
  enabled: boolean // 是否启用
  remark: string // 备注
}

// 跨境电商平台API配置 API
export const PlatformApiConfigApi = {
  // 查询跨境电商平台API配置分页
  getPlatformApiConfigPage: async (params: any) => {
    return await request.get({ url: `/crossborder/platform-api-config/page`, params })
  },

  // 查询跨境电商平台API配置详情
  getPlatformApiConfig: async (id: number) => {
    return await request.get({ url: `/crossborder/platform-api-config/get?id=` + id })
  },

  // 新增跨境电商平台API配置
  createPlatformApiConfig: async (data: PlatformApiConfigVO) => {
    return await request.post({ url: `/crossborder/platform-api-config/create`, data })
  },

  // 修改跨境电商平台API配置
  updatePlatformApiConfig: async (data: PlatformApiConfigVO) => {
    return await request.put({ url: `/crossborder/platform-api-config/update`, data })
  },

  // 删除跨境电商平台API配置
  deletePlatformApiConfig: async (id: number) => {
    return await request.delete({ url: `/crossborder/platform-api-config/delete?id=` + id })
  },

  // 批量删除跨境电商平台API配置
  deletePlatformApiConfigList: async (ids: number[]) => {
    return await request.delete({ url: `/crossborder/platform-api-config/delete-batch`, data: ids })
  },

  // 导出跨境电商平台API配置 Excel
  exportPlatformApiConfig: async (params) => {
    return await request.download({ url: `/crossborder/platform-api-config/export-excel`, params })
  },
}
